 
//Maquina de estado finito. abilita o desavilita los botones y campos de texto 
//deve controlar tambien los valores para queno se le pasen valores que no corresponden


function habilitar(valor){
//patas entrantes salientes crear y neurona
if(valor==1){
return ((document.getElementById("nPatasEntra").disabled =false)
 +" "+(document.getElementById("nPatasSalida").disabled =false)
 +" "+(document.getElementById("btnCrear").disabled=false)
 +" "+(document.getElementById("umbral").disabled=false)
 +" "+(document.getElementById("neuronaImg").disabled=true));
}
//patas entrantes salientes y crear
if(valor==2){
return ((document.getElementById("nPatasEntra").disabled =true)
 +" "+(document.getElementById("nPatasSalida").disabled =true)
 +" "+(document.getElementById("btnCrear").disabled=true)
 +" "+(document.getElementById("tbCaracterisicas").style.visibility='hidden')
 +" "+(document.getElementById("tbEnlazes").style.visibility='visible'));
}
//guardar y borrar
if(valor==3){
return ((document.getElementById("btnGuardar").style.visibility='visible')
 +" "+(document.getElementById("btnBorrar").disabled =false)
 +" "+(document.getElementById("btnCrear").disabled =true));
}
//invocado del evento borrar fila. borra todas las filas limpia todos los campos
//npatas, nsalidas ,nombre de nuerona, umbral.
//habilita el boton Crear, esconde el guardar.
if(valor==4){
return ((document.getElementById("btnGuardar").style.visibility='hidden')
 +" "+(document.getElementById("btnBorrar").disabled =true)
 +" "+(document.getElementById("btnCrear").disabled =false)
 +" "+(limpiarCampos()));
}
//Invocado desde el evento guardar valores de las patas de la neurona creada.
//deve prender la imagen de neuronaImg,suichImg, borrar todos los valores
//de los campos y anunciar que la "nueronaN" fue creada con exito.
//apaga btnCrear.
if(valor==5){
return((document.getElementById("nPatasEntra").disabled =true)
 +" "+(document.getElementById("nPatasSalida").disabled =true)
 +" "+(document.getElementById("btnCrear").disabled=true)
 +" "+(document.getElementById("suichImg").disabled=false)
 +" "+(document.getElementById("neuronaImg").disabled=false)
 +" "+(document.getElementById("umbral").disabled=true)
 +" "+(limpiarCampos()));
}

}
//Permite solo numeros para los campos de textos en 
//numeros de patas entrantes y salidas

function valNumerosPatas(){
var keynum = window.event ? window.event.keyCode : e.which;
 if ( keynum == 8 ) return true;
 return /\d/.test(String.fromCharCode(keynum));
}


//codigo de http://www.forosdelweb.com/f13/validar-numero-607595/
var numeroG;
//resive un float por el tema que los pesos pueden ser decimales
function validarPesos(numeroF){
 //var numeroF= document.getElementById("numero").value;
 
 numeroG=numeroF;
if( numeroG.match(/^-?[0-9]+(\.[0-9]{1,2})?$/) )
{
	return 1;
}
}


//se declara la limpieza de los campos se lo invoca a medida que se utilizan
//los eventos
function limpiarCampos(){

return((document.getElementById("nPatasEntra").value ="")
 +" "+(document.getElementById("nPatasSalida").value ="")
 +" "+(document.getElementById("umbral").value=""));

}